perm filename CRYPTO.DON[UP,DOC] blob sn#352211 filedate 1978-05-04 generic text, type T, neo UTF8
CRYPTO, not to be confused with the enciphering/deciphering program  CRYPT,
is a program to do the "bookkeeping" involved in solving cryptogram puzzles
(single-letter-substitution ciphers).  It is  designed to run on  DataDisc,
III, and Datamedia displays; it can be used from other terminals but is not
as nice on them because it redraws the entire "display" after each command.

The basic features of the program are, given a cryptogram, it will  display
it along  with any  "clear text"  you've got  so far,  keep track  of  what
letters you've used  and what their  encoded mappings are,  and so on.	 It
also offers a  tally of the  character frequencies in  the cryptogram,	and
suggests  possible  mappings  based  on  a  built-in  table  of   "average"
frequencies.  (It  doesn't  do	anything clever  like  looking	at  bigram,
trigram, and tetragram frequencies.)

Among the more	esoteric features  of CRYPTO are  the ability  to save	the
current mapping in any of 10 internal "registers", and the ability to  save
the  cryptogram  text  in   a  file  for   later  restoration.	 The   file
SYS:CRYPTO.DAT contains a few  sample cryptograms for  you to practice	on.
[Note: The format  of a cryptogram  file is rather  esoteric; please  don't
poke at CRYPTO.DAT with any program other than CRYPTO.]

When you run CRYPTO, it reports how many cryptograms are in  SYS:CRYPTO.DAT
(if any) and describes your options.  These are:

[1] You can type a number to select a cryptogram from CRYPTO.DAT.

[2] You can type a null line (or any number out of range of CRYPTO.DAT)  to
    get a randomly-selected cryptogram out of CRYPTO.DAT.

[3] You can type a  hyphen followed by a file  name to select a file  other
    than CRYPTO.DAT.

[4] You can type in a cryptogram,  using one or more lines, ending with  an
    empty line.  About 7 lines  of text can be fit  on a DD screen.   Since
    tab characters don't work with the DD display routine, the program will
    replace them with a fixed number of spaces.

Having by one of the above means gotten a cryptogram set up, you will  find
yourself in the "main  loop".  In this loop,  CRYPTO will display  whatever
you've got so far and then await further commands.  The display includes:

[1] The cryptogram text, in all-caps, with the partial clear text (if  any)
    shown above it in lower-case.

[2] At bottom left, a table showing the current mapping.  The letters which
    occur in  the cryptogram  are  shown in  alphabetical order,  with	the
    corresponding clear-text letters shown beside them.

[3] At bottom right, a table showing which clear-text letters have not	yet
    been used.

[4] (Optional).  At bottom center,  a table listing the cryptogram  letters
    in descending order  of frequency.	 For those letters  which have	not
    been assigned a clear-text mapping, CRYPTO offers suggestions based  on
    the relative  frequency  of  letters  in  English  (or,  at  least,  in
    Wuthering Heights and Grimm's Fairy Tales).

Item [4] is not initially displayed, since you might want to try working on
the cryptogram without even this most  meager of assistance.  See below  to
find out how to turn this part of the display on and off.

There are two classes  of commands to CRYPTO.	The first kind control	the
mappings and display, and  can be entered several  to a line, separated  by
commas or blanks.  These commands are:

Xy	map "X" (in encrypted text) to "y" (in clear text)
	(if something else also maps to "y", that mapping is flushed)
X	remove mapping for "X"
+	include frequency data in display
-	remove frequency data from display
→n	save current mappings in "register" n
←n	restore mappings to those saved in register n

Here X and y represent  any letters, and may be  typed in either upper-  or
lower-case.  n may be any single digit.  For example,

AX BC KP

would map crypted  A to clear  X, crypted B  to clear C,  and crypted K  to
clear P.  Having done this, the command

→1 FX BG K

would save the AX/BC/KP mapping in register 1, then map crypted F to  clear
X (automatically flushing the  mapping for crypted A),  change the map  for
crypted B  to clear  G, and  flush the  map for  crypted K.   The  previous
mapping could be restored by typing ←1.

The other commands must be typed alone on the line.  They are:

CLEAR or RESET	 flush all mappings
FILE		 save the cryptogram text in a file
QUIT or EXIT	 exit
HELP or ?	 display a summary of this information

Of these, the only command which  might require further explanation is  the
FILE command.  If  you type  FILE, CRYPTO  will ask  you for  a file  name.
There  is  no  default  name;  if  you  wish  to  append  a  cryptogram  to
SYS:CRYPTO.DAT you must say so explicitly (please don't do so unless you're
sure you've  entered the  text correctly!).   If the  file doesn't  already
exist, you will be asked to confirm its creation.  CRYPTO then recopies the
file and appends the new cryptogram.  In the course of copying the file, it
checks whether the new cryptogram is  identical to any already in the  file
("identical" to within  a single-letter-substitution mapping).   If it  is,
the operation  is aborted.   If the  new cryptogram  is not  identical  but
nevertheless bears a  strong similarity  to one  in the  file, CRYPTO  will
report this and ask for confirmation before it proceeds.